HOPCOUNT-MIB DEFINITIONS ::= BEGIN

        IMPORTS
                ifIndex
                        FROM IF-MIB
                MODULE-IDENTITY, OBJECT-TYPE, Integer32, enterprises
                        FROM SNMPv2-SMI
                TruthValue
                        FROM SNMPv2-TC
                MODULE-COMPLIANCE, OBJECT-GROUP
                        FROM SNMPv2-CONF;

atmfHopCountMIB MODULE-IDENTITY
        LAST-UPDATED    "200202280000Z"
        ORGANIZATION    "The ATM Forum"
        CONTACT-INFO
            "The ATM Forum
             Presidio of San Francisco
             P.O. Box 29920 (mail)
             572B Ruger Street (surface)
             San Francisco, CA 94129-0920
             Phone:   +1.415.561-6275
             Fax:     +1.415.561-6120
             info@atmforum.com"
        DESCRIPTION
            "The MIB module for managing the ATM Forum 
             Loop Detection v1.0 specification."
        REVISION "200111010000Z"
        DESCRIPTION
          "Initial version of the MIB module for managing the ATM Forum
           Loop Detection v1.0."
       ::= { atmfHopCount 1 }

-- The object identifier subtree for the ATM Forum Hop Count MIBs

atmForum    OBJECT IDENTIFIER ::= { enterprises 353 }
atmForumNetworkManagement   OBJECT IDENTIFIER ::= { atmForum 5 }
atmfSignalling    OBJECT IDENTIFIER ::= { atmForumNetworkManagement 9 }
atmfHopCount   OBJECT IDENTIFIER ::= { atmfSignalling 4 }  -- to be assigned

hopCountMIBObjects OBJECT IDENTIFIER ::= { atmfHopCountMIB 1 }

-- ========================================
-- Per Switch Hop Count Configuration
-- ========================================

    atmSwHopCountGen OBJECT-TYPE
        SYNTAX   TruthValue
        MAX-ACCESS   read-write
        STATUS        current
        DESCRIPTION
            "Indicates whether a Remaining Hop Count will be generated
             at AINI interfaces on this switch for outgoing
             calls, when not already present and when atmIfHopCountGen 
             for that interface is set to true.  Both the switch and
             interface settings must be true to cause a Remaining Hop
             Count to be generated.
            "
        REFERENCE
            "ATM Forum Loop Detection v1.0, section 3.2.1"
        DEFVAL { true }
    ::= { hopCountMIBObjects 1 }


    atmSwHopCountMax OBJECT-TYPE
        SYNTAX        Integer32 (1..255) 
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION
            "The Hop Count Maximum is an initial (and maximum)
             value for the Hop Count.  It is configurable per
             switch.  It is an integer with a value of at least 1
             and at most 255.  It defaults to 50.
            "
        REFERENCE
            "ATM Forum Loop Detection v1.0, section 3.2.1"
        DEFVAL { 50 }
    ::= { hopCountMIBObjects 2 }

-- ========================================
-- Per Interface Hop count Configuration
-- ========================================

    atmIfHopCountGenTable OBJECT-TYPE
        SYNTAX        SEQUENCE OF AtmIfHopCountGenEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
            "This table is used to manage the generation of Remaining
             Hop Counts on a per interface basis. One row exists in 
             this table for each row in the ifTable with ifType value
             atm(37) or atmLogical(80) that is configured to run the
             AINI signalling protocol."
         REFERENCE
            "ATM Forum Loop Detection v1.0"
        ::= { hopCountMIBObjects 3 }

    atmIfHopCountGenEntry OBJECT-TYPE
        SYNTAX        AtmIfHopCountGenEntry
        MAX-ACCESS    not-accessible
        STATUS        current
        DESCRIPTION
            "An entry used to manage generation of Remaining Hop Count
             on an AINI."
        INDEX { ifIndex }
        ::= { atmIfHopCountGenTable 1 }

    AtmIfHopCountGenEntry ::=
        SEQUENCE {
                   atmIfHopCountGen           TruthValue
                 }

    atmIfHopCountGen OBJECT-TYPE
        SYNTAX        TruthValue
        MAX-ACCESS    read-write
        STATUS        current
        DESCRIPTION
            "Indicates whether a Remaining Hop
             Count will be generated at this AINI interface
             for outgoing calls when not already present and
             when atmSwHopCountGen is set to true. Both the switch
             and interface settings must be true to cause a Remaining
             Hop Count to be generated.
            "
        REFERENCE
            "ATM Forum Loop Detection v1.0, section 3.2.1"
        DEFVAL { true }
        ::= { atmIfHopCountGenEntry 1 }

-- conformance information

hopCountMIBConformance
                   OBJECT IDENTIFIER ::= { atmfHopCountMIB 2 }
hopCountMIBCompliances
                   OBJECT IDENTIFIER ::= { hopCountMIBConformance 1 }
hopCountMIBGroups
                   OBJECT IDENTIFIER ::= { hopCountMIBConformance 2 }


-- compliance statements

hopCountMIBCompliance MODULE-COMPLIANCE
        STATUS        current
        DESCRIPTION
            "The compliance statement for entities which implement
             the Hop Count.  All objects are required."

        MODULE  -- this module
            MANDATORY-GROUPS { 
                               hopCountSwGroup,
                               hopCountIfGroup
                              }

        ::= { hopCountMIBCompliances 1 }

-- units of conformance

hopCountSwGroup OBJECT-GROUP
        OBJECTS { 
                   atmSwHopCountGen,
                   atmSwHopCountMax
                }
        STATUS current
        DESCRIPTION
            "A collection of per switch Hop Count management objects
             required for managing the Hop Count extension in a
             switching system."
        ::= { hopCountMIBGroups 1 }

hopCountIfGroup OBJECT-GROUP
        OBJECTS {
                  atmIfHopCountGen
                }
        STATUS current
        DESCRIPTION
            "A collection of per interface Hop Count objects required
             for managing the Hop Count extension in a switching
             system."
        ::= { hopCountMIBGroups 2 }

END